Conventionally, there is a main device that, if an accessory device has been newly added to the main device, automatically downloads the firmware of the accessory device from a service site to the main device and updates the firmware of the accessory device. Further, in such a conventional technique, also the firmware of the main device is individually downloaded and updated.
In the conventional technique, however, only either one of the main device and the accessory device may be able to be updated depending on the state of connection between the main device and the service site or the state of connection between the main device and the accessory device.
Therefore, it is an object of an exemplary embodiment to provide a technique capable of updating each of the pieces of system software of devices capable of being connected to each other.
To achieve the above object, the exemplary embodiment employs the following configurations.
An exemplary embodiment is an information processing system capable of being connected to a second device having second system software. The information processing system includes a storage unit, an update data acquisition unit, and an update unit. The storage unit stores first system software for controlling the information processing system. The update data acquisition unit, regardless of whether or not the second device is connected to the information processing system, externally acquires first update data for updating the first system software, together with second update data for updating the second system software, and saves the first update data and the second update data. The update unit updates the first system software stored in the storage unit and the second system software, using the first update data and the second update data.
It should be noted that the update unit may update the second system software, or the update unit may transmit the second update data to the second device, thereby updating the second system software. That is, the update unit may directly or indirectly update the first system software and the second system software.
Based on the above, even if the second device is not connected to the information processing system, it is possible to acquire and save both the first update data and the second update data. This makes it possible to update the two pieces of system software.
In addition, in another configuration, the information processing system may further include a connection determination unit configured to determine whether or not the second device is connected to the information processing system. If the second device is not connected to the information processing system, the update unit may update the first system software using the first update data without updating the second system software.
Based on the above, even if the second device is not connected to the information processing system, it is possible to update the first system software of the information processing system. For example, it is possible to bring the information processing system into the latest state.
In addition, in another configuration, if, after the update unit has updated the first system software using the first update data when the second device had not been connected to the information processing system, the second device has been connected to the information processing system, the update unit may update the second system software using the second update data acquired together with the first update data by the update data acquisition unit.
Based on the above, even if the information processing system cannot externally acquire the second update data when the second device has been connected to the information processing system, it is possible to update the system software of the second device using the saved second update data.
In addition, in another configuration, if the second device has been connected to the information processing system, the update unit may automatically update the second system software, not on the basis of an operation of a user.
Based on the above, if the second device has been connected to the information processing system, it is possible to automatically update the second device. Thus, when the information processing system has been updated, it is possible to certainly update also the second device. This makes it possible to, for example, make small the difference in the version of the system software between the information processing system and the second device.
In addition, in another configuration, the information processing system may further include a second device determination unit configured to, if the second device has been connected to the information processing system, determine, on the basis of the second update data and the second system software stored in the second device, whether or not the second system software is to be updated. If the second device determination unit has determined that the second system software is to be updated, the update unit updates the second system software using the second update data.
Based on the above, if the second device has been connected to the information processing system, it is possible to determine, on the basis of the current second system software and the acquired second update data, whether or not the second system software is to be updated. For example, it is determined whether or not the version of the current second system software is older. If the version of the current second system software is older, it is possible to update the second system software.
In addition, in another configuration, the update data acquisition unit may hold the second update data even after the update unit updates the second system software.
Based on the above, even after the second device has been updated, the information processing system can hold the second update data. For example, it is possible to update a plurality of second devices.
In addition, in another configuration, if the second device is connected to the information processing system, the update unit may update the first system software using the first update data, and also update the second system software using the second update data.
Based on the above, if the second device is connected to the information processing system, it is possible to update the two devices.
In addition, in another configuration, the update data acquisition unit may acquire the first update data and the second update data corresponding to the first update data.
Based on the above, it is possible to acquire the second update data corresponding to the first update data. Thus, it is possible to cause the pieces of system software of the updated two devices to correspond to each other.
In addition, in another configuration, the update data acquisition unit may acquire the first update data and the second update data as a set.
Based on the above, it is possible to acquire the first update data and the second update data as a set. Thus, it is possible to update the first system software and the second system software using the two pieces of update data as a set.
In addition, in another configuration, the information processing system may further include a network connection unit capable of being connected to a network, or a medium data reading unit capable of reading external data from a portable storage medium. The update data acquisition unit acquires the first update data and the second update data via the network or the storage medium.
Based on the above, it is possible to acquire update data via a network or a storage medium.
In addition, in another configuration, the information processing system may further include a connection information storage unit, a communication unit, and a connection cancellation unit. The connection information storage unit stores connection information required for communication with the second device. The communication unit, if the connection information is stored in the connection information storage unit, communicates with the second device. The connection cancellation unit, if the second device is not connected to the information processing system when the update unit updates the first system software and the second system software, deletes the connection information stored in the connection information storage unit.
Based on the above, if the connection information is stored in the information processing system, the information processing system communicates with the second device. If the second device is not connected to the information processing system when the first system software and the second system software are updated, the information processing system deletes the connection information and cancels the connection with the second device.
In addition, another exemplary embodiment is an information processing apparatus for being connected to a first device having a first system software and cooperating with the first device. The first device externally acquires first update data for updating the first system software, together with second update data for updating second system software for controlling the information processing apparatus, and saves the first update data and the second update data. The information processing apparatus includes a storage unit, a connection establishment unit, a notification unit, and an update unit. The storage unit stores the second system software. The connection establishment unit transmits or receives information to or from the first device, and establishes a connection between the information processing apparatus and the first device. The notification unit, after the connection establishment unit has established the connection between the information processing apparatus and the first device, notifies, in accordance with a request from the first device, the first device of version information of the second system software stored in the storage unit. The update unit receives the second update data transmitted from the first device in accordance with the notification made by the notification unit, and updates the second system software stored in the storage unit, using the received second update data.
Based on the above, the first device can acquire the second update data, and it is possible to receive the second update data from the first device and update the information processing apparatus.
It should be noted that the information processing system may include a plurality of apparatuses, or may include a single apparatus. Further, another exemplary embodiment may be an information processing apparatus, an information processing program, or an information processing method.
Based on the exemplary embodiment, it is possible to update the pieces of system software of two devices capable of being connected to each other.
These and other objects, features, aspects and advantages of the exemplary embodiment will become more apparent from the following detailed description of the exemplary embodiments when taken in conjunction with the accompanying drawings.